package com.itheima.d6_tcp3;

import java.io.BufferedWriter;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.Socket;
import java.util.Scanner;

/*
   目标：完成TCP通信快速入门-客户端开发：实现1发1收。
 */
public class Client {
    public static void main(String[] args) throws Exception {
        // 1、创建Socket对象，并同时请求与服务端程序的连接。
        Socket socket = new Socket("10.254.1.194", 10086);
        //开启线程 持续接收服务端的数据 不能使用while的原因是：while下面代码无法执行
        ClientThread clientThread=new ClientThread(socket);
        new Thread(clientThread).start();
        // 2、从socket通信管道中得到一个字节输出流，用来发数据给服务端程序。
        OutputStream os=socket.getOutputStream();
        // 3、把低级的字节输出流包装成高效的输出流
        OutputStreamWriter osw=new OutputStreamWriter(os);
        BufferedWriter bw=new BufferedWriter(osw);

        Scanner scanner = new Scanner(System.in);

        // 4、开始写数据出去了
        while(true){
            System.out.println("输入数据");
            String s=scanner.next();
            bw.write(s);
            bw.newLine();
            bw.flush();
            if(s.equals("886")){
                break;
            }
        }
        // 5、释放连接资源
        bw.close();
        socket.close();

    }
}
